/*
 * @Author: yanzengyong 709402944@qq.com
 * @Date: 2025-08-15 16:45:27
 * @LastEditors: yanzengyong 709402944@qq.com
 * @LastEditTime: 2025-08-19 20:11:59
 * @FilePath: /cyj-boot-parent/cyj-boot-web/mock/demo/table-pure-demo.ts
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
import { MockMethod } from 'vite-plugin-mock'; // 导入vite-mock的类型定义
import { resultPageSuccess } from '../_util'; // 导入工具函数（分页处理、基础URL）

const demoList = () => {
  return Array.from({ length: 50 }, (_, index) => ({
    id: `${index}_${Math.floor(Math.random() * 3)}`,
    projectName: `项目${index + 1}`,
    implementationStage: ['筹备阶段', '实施阶段', '验收阶段'][Math.floor(Math.random() * 3)],
    projectType: ['建筑工程', '软件开发', '交通工程'][Math.floor(Math.random() * 3)],
    projectImplementationUnit: `单位${String.fromCharCode(65 + index % 26)}`,
    projectLocation: ['北京市', '上海市', '广州市', '深圳市'][Math.floor(Math.random() * 4)],
    projectManager: `经理${index + 1}`,
    inspectionLeadDepartment: ['技术部', '工程部', '质检部'][Math.floor(Math.random() * 3)],
    plannedInspectionStartTime: `2024-${String(Math.floor(Math.random() * 12) + 1).padStart(2, '0')}-${String(Math.floor(Math.random() * 28) + 1).padStart(2, '0')}`,
    plannedInspectionEndTime: `2024-${String(Math.floor(Math.random() * 12) + 1).padStart(2, '0')}-${String(Math.floor(Math.random() * 28) + 1).padStart(2, '0')}`,
  }));
};

export default [
  {
    url: `/mock/table-pure/list`, // 接口路径（如 /api/table/getDemoList）
    timeout: 100, // 接口响应延迟（100ms，模拟网络请求耗时）
    method: 'get', // 请求方法
    response: ({ query }) => { // 响应处理函数（接收请求参数）
      const { page = 1, pageSize = 20 } = query; // 从查询参数中获取分页信息（默认第1页，每页20条）
      const pageNo = +(query.pageNo ?? page); // 兼容可能的分页参数名（pageNo或page）
      return resultPageSuccess(pageNo, +pageSize, demoList()); // 调用工具函数返回分页后的数据
    },
  },
] as MockMethod[];
